<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //typeof  instanceof
        var arr=[1,2,3,4,5];
        // console.log(typeof arr);//object
        // console.log(typeof {});//object
        // console.log(arr instanceof Array);//true
        // console.log({} instanceof Object);//true
        // console.log(arr instanceof Object);//true


       // call apply bind---->返回函数的拷贝,没有调用 调用的时候需要在后面加括号
        // console.log(Object.prototype.toString.call(arr));
        // console.log(Object.prototype.toString.bind(arr)());

        //高阶函数  函数里面套函数
        // function f() {
        //     // console.log("f()");
        //     return function () {
        //         console.log("f()");
        //     }
        // }
        // console.log(f());
        // f()()

       

        // function f(fun) {
        //     // arguments
        //     btu.onclick=function(){
        //         fun();
        //   }
        // }

        // function sum() {
        //     console.log("sum");
        // }
        
        
        //回调地狱
        function f(fun) {
            fun()
        }
        // f(f(f(f())))
        //Promise  then

        //解决回调地狱问题
        // new Promise.then().then().then().then()
        
        
        // sum();
        // f(sum);
    </script>
</head>
<body>
    
</body>
</html>